مدیریت اطلاعات در فرم ها به کمک دکمه های کنترلی
مدیریت فرم ها در اکسس با استفاده از دکمه ها موضوع آموزشی است که می خواهیم امروز به آن بپردازیم.
ما از دکمه ها در داخل اکسس در دو محیط می توانیم استفاده کنیم .
محیط اول فرم ها هستند و محیط دوم گزارش ها .
اما هدف ما از استفاده از دکمه ها در محیط اکسس چیست؟
ما دکمه ها را داخل یک فرم و یا گزارش خود قرار می دهیم تا به کمک آنها خیلی از کارهایی را که باید در طی چند مرحله به انجام دهیم را تنها با استفاده از یک کلیک ساده بر روی دکمه مورد نظر به انجام برسانیم .
بگذارید یک مثال ساده بزنم .
فرض کنید که شما فرمی دارید که اطلاعات مربوط به یک جدول را برای شما نمایش می دهد .
حالا بنا به هردلیل می خواهید اطلاعات یک رکورد خاص را از جدول خود حذف کنید .
خوب برای این کار باید مراحل زیر را دنبال کنید .
– اول باید به سراغ جدول مورد نظر بروید و آن را باز کنید .
– باید از بین رکوردهای مختلف رکورد مورد نظر را پیدا کنید و آن را انتخاب کنید .
– در انتها هم باید رکورد مورد نظر را حذف کنید .
نمی دانم انجام دادن این سه مرحله برای شما چقدر طول می کشد .
۳۰ ثانیه …….. ۱۵ ثانیه ………. یا شاید هم کمتر از اینها .
اما هرچه هم که این زمان کم باشد مطمئنا کمتر از این نخواهد بود که شما یک دکمه روی فرم خود بگذارید و فقط با یک کلیک بر روی این دکمه کار حذف اطلاعات رکورد جاری خود را انجام دهید .
و البته این یکی از کارهایی است که با استفاده از دکمه ها می توانیم انجام دهیم .
اگر در مورد ماکروها سوالی دارید حتما به شما پیشنهاد می کنم که مطلب زیر را هم مطالعه کنید .
چرا که در مطلبی با عنوان ماکروها در اکسس از صفر تا صد کار با آنها هر چیزی که در مورد ماکروها نیاز است را در اختیار شما قرار داده ام .
چگونه با استفاده از دکمه ها به مدیریت فرم ها در اکسس بپردازیم؟
یکی از مهمترین کارهایی که به کمک دکمه ها می توانیم انجام بدهیم مدیریت کردن اطلاعات فرم ها می باشد . نگاهی به این لیست بکنید :
۱- رفتن به رکورد بعدی
۲- رفتن به رکورد قبلی
۳- ایجاد یک رکورد جدید
۴- حذف یک رکورد
۵-رفتن به آخرین رکورد
۶-رفتن به اولین رکورد
این لیستی از کارهایی است که می توانیم به کمک دکمه ها انجام دهیم .
اما چه جوری باید این کار را انجام دهیم و چه تنظیماتی برای این کار لازم است .
خوب برای این کار باید دو تا مرحله را انجام بدهیم .
– مرحله اول اینکه دکمه مورد نظر خود را ایجاد کنیم .
– مرحله دوم تنظیم اینکه هر دکمه با کلیک کردن چه کاری را باید انجام بدهد .
خوب از مرحله اول کار خودمون رو شروع می کنیم .
ایجاد دکمه ها ی مدیریتی روی یک فرم
من فرمی دارم که اطلاعات مربوط به یک جدول را به من نمایش می دهد و از طریق همین فرم هم می توانم اطلاعات مورد نظر خود را وارد جدول مربوطه کنم .
برای مدیریت فرم در اکسس و اطلاعاتی که در آن نمایش داده می شود می خواهم از چند دکمه استفاده کنم .
در قدم اول باید دکمه های مورد نظر خود را بر روی فرم قرار دهیم .
برای این کار باید فرم خود را در محیط طراحی قرار دهیم.
بعد از داشبورد controls بر روی آیکون مربوط به دکمه یا همان command button کلیک کنید .
حالا در محلی که مورد نظر شماست یک کلیک کنید تا این دکمه بر روی فرمتان قرار گیرد .
به همین راحتی توانستید یک دکمه را ایجاد و بر روی فرم خود قرار دهید .
اما قبل از اینکه به سراغ مرحله بعد بخواهیم برویم اجازه بدهید یکسری تغییرات در شکل و شمایل دکمه خود بدهیم .
اولین کار این است که یک نام مناسب برای دکمه خود انتخاب کنیم .
این نام قرار است در محیط کد نویسی مورد استفاده قرار گیرد .
برای تعیین نام یک دکمه بهتر است موارد زیر را مد نظر قرار دهیم.
اول اینکه نامی را انتخاب کنیم که متناسب با کاری است که قرار است این دکمه برای ما انجام دهد .
مثلا اگر قرار است این دکمه فرم ما را ببندد من نام cmd_close را برای آن انتخاب می کنم .
یا اینکه اگر قرار است با کلیک بر روی این دکمه رکورد بعدی را به من نمایش دهد ترجیح می دهم نام آن را cmd_nextrecord را برای آن انتخاب کنم .
این نام گذاری دو بخش دارد که توسط یک زیر خط از هم جدا می شوند .
بخش اول که مخفف کلمه command است و اشاره می کند که این شی از نوع command button است .
در بخش دوم هم مشخص می کنیم این دکمه چه کاری را قرار است برای ما انجام دهد .
البته این نحوه نام گذاری کاملا اختیاری و سلیقه ای است اما فراموش نکنید که یک برنامه نویس حرفه ای باید در تمام زمینه ها حرفه ای عمل کند .
مشخصه بعدی که باید آن را تغییر بدهیم Caption دکمه مربوطه می باشد .
Caption یک عنوان است بر روی دکمه قرار می گیرد و قرار است به کاربر نمایش داده شود .
خوب مطمئنا این عنوان هم باید به گونه ای باشد که کاربر با نگاه کردن به آن متوجه شود که این دکمه قرار است چه کاری را برایش انجام دهد .
انجام سایر تغییرات هم مثل رنگ دکمه و فونت نوشته و یا سایز دکمه را هم از مواردی است که می توان انجام داد .
برای انجام تمامی این تغییرات کافی است که دمه خود را به حالت انتخاب در آورید .
سپس از کادر Property Sheet به هر کدام از این آیتم ها دسترسی پیدا کنید و آنها را تغییر دهید .
به همین روش می توانید سایر دکمه های مورد نظر خود را ایجاد کنید و آنها را در محل مناسب خود قرار دهید .
بعنوان نمونه به فرم من توجه کنید .
.
در اینجا من تام دکمه های مورد نظر خود را روی فرم قرار داده ام .
حالا نوبت این است که تعیین کنیم که با کلیک کردن روی هر کدام از این دکمه ها آن دکمه خاص چه کاری را برای ما انجام دهد .
خوب برای این کار سه روش وود دارد که در اینجا به هر سه این روش ها می پردازیم .
هر چند که انجام این روش ها در اجرا متفاوت است اما همه آنها یک نتیجه یکسان خواهند داشت .
روش های مختلف تنظیم عملکرد دکمه ها در اکسس
روش اول استفاده از قابلیت Wizard
اگر دقت کنید احتمالا بعد از قرار دادن هر دکمه بر روی فرم بلافاصله اکسس یک پنجره را به شما نمایش می دهد .
این پنجره مربوط به تعیین عملکرد دکمه مورد نظر با استفاده از قابلیت Wizard می باشد .
خوب این پنجره خیلی واضح و روشن از شما می پرسد که وقتی که کاربر روی این دکمه کلیک کرد اکسس باید چه کاری را انجام دهد .
بعنوان مثال من از طریق دکمه “بعدی ” که روی فرم قرار دارد وارد این پنجره شدم.
همانطور که از عنوان دکمه هم برمی آید می خواهم با کلیک کردن بر روی دکمه رکورد بعدی به من نمایش داده شود .
خوب از کادر سمت چپ گزینه Record Navigation و از کادر سمت راست هم گزینه Go To Next Record را انتخاب می کنم .
بعد بر روی دکمه Next کلیک می کنم تا پنجره زیر به من نمایش داده شود .
خوب در این پنجره هم تعیین می کنیم که بر روی دکمه ما که عنوان نوشته شود یا اینکه به جای متن یک تصویر را قرار دهیم .
و در پنجره آخر هم می توانیم یک نام برای این دکمه خود تعیین کنیم .
و در نهایت هم که روی دکمه Finish کلیک می کنیم و تمام .
همین روش را برای سایر دکمه ها هم می توانید بکار ببرید و متناسب با نام هر دکمه عملکرد مناسب را برای آن تعریف کنید .
اما اجازه دهید به یک نکته هم اینجا ذکر کنم :
آن هم اینکه اگر دکمه خود را بر روی فرم قرار دادید ولی پنجره مذکور بلافاصله برای شما به نمایش در نیامد این بخاطر این است که شما هم مثل من خواسته یا ناخواسته قابلیت اجرای خودکار آن را غیر فعال کرده اید .
در این صورت می توانید تنظیمات را مثل آن چیزی که در ابتدای کار مشاهده کردید از طریق کادر Property sheet انجام دهید .
اما اگر می خواهید این قابلیت را فعال کنید فقط کافی است بر روی گزینه Use Control Wizard کلیک کنید تا این قابلیت برای شما فعال شود .
این ساده ترین و در عین حال راحت ترین راهی است که می توان با استفاده از آن به تعریف عملکرد هر کدام از این دکمه ها بپردازیم .
اما برویم به سراغ روش دوم .
تنظیم عملکرد دکمه ها با استفاده از ماکروها .
ماکرو ها هم از آن دست قابلیت های کاربردی نرم افزار اکسس هستند که کمتر شناخته شده اند اما کاربردهای بسیار زیادی دارند .
امروز بهانه ای شد که با هم بتوانیم به استفاده از یکی از این قابلیت ها بپردازیم .
در روش قبلی ما عملکرد دکمه با عنوان ” بعدی ” را تنظیم کردیم .
در این مرحله می خواهیم عملکرد دکمه با عنوان ” قبلی ” را با استفاده از ماکروها تعیین کنیم به گونه ای که وقتی بر روی این دکمه کلیک کردیم اطلاعات رکورد قبلی به ما نمایش داده شود .
پس با هم همراه شویم تا این کار را با کمک ماکروها انجام دهیم :
۱- اول دکمه مربوط به “قبلی ” را به حالت انتخاب درآورید و در پنجره Property Sheet به سربرگ Event بروید .
در این پنجره در رویداد On Click بر روی آیکون سه نقطه مقابل کلیک کنید تا پنجره زیر برای شما نمایش داده شود .
۲- در این پنجره گزینه اول یعنی Macro Builder را انتخاب و بر روی دکمه OK کلیک کنید .
با این کار وارد محیط ماکروها می شوید
۳- در این محیط یک کمبو باکس مشاهده می کنید .
این کمبو باکس را باز کرده و به دنبال گزینه ای به نام Go To Record بگردید.
۴٫ وقتی این گزینه را انتخاب کردید بلافاصله وارد محیط زیر می شوید .
در اینجا باید تنظیمات لازم را به ترتیب زیر انجام دهید.
در کادر اول تعیین می کنید که دکمه شما در کدام از یک از اشیای موجود در بانک اطلاعاتی شما قرار دارد چون در اینجا دکمه ما در داخل فرم ما می باشد بنابراین شی Form را انتخاب می کنیم .
در کادر دوم هم نام فرمی را که دکمه ما در آن قرار دارد را انتخاب می کنیم .
در کادر سوم هم تعیین می کنیم که با کلیک کردن بر روی دکمه ما چه کاری انجام شود .
اینجا هدف ما این است که با کلیک بر روی دکمه مربوطه اطلاعات رکورد قبلی برای ما نمایش داده شود .
این روشی است که به کمک ماکروها می توانیم عملکرد دکمه های خود را مشخص کنیم .
قاعدتا روش کار برای سایر دکمه ها هم به همین منوال می باشد فقط تنها تفاوت در تعیین نوع کاری است که برای هر دکمه تعیین می کنیم که باید متفاوت از سایر دکمه ها باشد که این کار را هم در کادر سوم تعیین می کنیم .
حالا برویم به سراغ روش سوم برای مدیریت فرم ها در اکسس.
تعیین عملکرد دکمه ها با استفاده از کد نویسی VBA
بهترین راهکار برای تعیین عملکرد دکمه ها استفاده از کدنویسی و کدهای VBA می باشد .
البته به شرط اینکه با نحوه نوشتن کد ها و در کل برنامه نویسی VBA آشنا باشیم .
البته این کد نویسی قرار نیست کار چندان سخت و پیچیده ای باشد .
در ادامه با من همراه باشید تا متوجه سادگی این کار شوید .
یکی از دستورات پرکاربرد در کد نویسی VBA دستور DOcmd می باشد .
با استفاده از این دستور می توانیم کارهای زیادی را انجام دهیم .
یکی از این کارها هم که در اینجا تعیین عملکرد دکمه ها می باشد .
خوب برای شروع کار بر روی دکمه با عنوان ” بعدی ” کلیک کنید تا فعال شود
سپس در پنجره Property Sheet به سربرگ Event بروید .
در این پنجره در رویداد On Click بر روی آیکون سه نقطه مقابل آن کلیک کنید تا پنجره Choose Builder برای شما نمایش داده شود .
این بار در این پنجره آخرین گزینه یعنی Code Builder را انتخاب کنید .
با این کار وارد محیط کد نویسی شده و رویدادی تحت عنوان On -click برای شما نمایش داده می شود .
اول از همه دستور docmd را بنویسید و بعد از آن یک نقطه بگذارید .
بلافاصله لیستی از انتخاب ها برای شما باز می شود .
گزینه GotoRecord را انتخاب کنید .
حالا کافی است یک فاصله ایجاد کنید تا آرگومانهای مورد نظر این دستور برای شما نمایش داده شود .
البته تمامی این آرگومانها اجباری نیست اما آنهایی را که باید تنظیم کنید شامل موارد زیر است :
اول که نوع شی مورد نظر خود را تعیین کنید که همان acdataForm است .
بعد هم که نام فرم مورد نظر خودمان را وارد می کنیم.
در آخر هم که باید نوع کار مورد نظر خود مان را انخاب کنیم .
همه این مراحل را هم که در تصویر زیر می توانید مشاهده کنید .
حالا برویم به سراغ چند نکته :
نکته اول اینکه دقت کردید که روش انجام این کار دقیقا مشابه کاری بود که ما با ماکروها انجام دادیم .
یعنی تک تک مراحلی را که در محیط ماکروها و به کمک محیط گرافیکی انها انجام دادیم را در محیط برنامه نویسی با استفاده از کدهای VBA انجام دادیم . آیا کار سختی بود ؟
مطمئنا نه .
فقط کافی است که در درجه اول خودمان بدانیم که چه کار می خواهیم بکنیم و در درجه دوم چگونه و با استفاده از چه دستوراتی کار مورد نظر خود را برای برنامه تعریف کنیم .
به همین راحتی .
اینجاست که می گوییم برنامه نویسی اصلا کار سخت و مشکلی نیست .
و اما نکته دوم اینکه در مورد آرگومان دوم وقتی می خواهیم نام فرم خود را به تابع بدهیم حتما باید آن را در داخل دو علامت ” ” قرار بدهیم .
برای مابقی دکمه ها هم که روش کار کاملا شبیه همین دکمه است فقط در مرحله آخر و آرگومان آخری که تعیین می کنیم نوع کار مورد نظر را مشخص می کنیم .
لیست این آرومانها بصورت زیر است :
acprevious :برای رفتن به رکورد قبلی بر روی فرم
DoCmd.GoToRecord acDataForm, "form4",acPrevious
aclast: برای رفتن به آخرین رکورد موجود در جدول و نمایش آن بر روی فرم
DoCmd.GoToRecord acDataForm, "form4", acLast
acfirst: برای رفتن به اولین رکورد موجود در جدول و نمایش آن بر روی فرم
DoCmd.GoToRecord acDataForm, "form4", acFirst
acNewrecord: برای ایجاد یک رکورد جدید و درج اطلاعات تازه در جدول از طریق فرم جاری
DoCmd.GoToRecord acDataForm, "form4",acNewRec
اگر که دقت کنید ما در روی فرم خود ۵ دکمه داشتیم که با کمک دستور Docmd می توانیم برای هر کدام از آنها عملکرد مختص آنها را تعریف کنیم .
فقط می ماند دکمه ای به نام “حذف اطلاعات ” که باید برای آن هم یک وظیفه مشخص کنیم .
خوب اول بیایید بدانیم که چه کاری می خواهیم بکنیم .
می خواهیم وقتی بر روی دکمه با عنوان حذف کتاب کلیک کردیم اطلاعات مربوط به کتابی که در حال حاضر به بر روی فرم ما نمایش داده می شود از جدول حذف شود .
چگونه باید این کار را انجام دهیم .
برای انجام این کار هم مجددا از شی Docmd استفاده می کنیم اما این بار به جای متد قبلی به سراغ متد دیگری تحت عنوان RunCommand می رویم .
DoCmd.RunCommand acCmdDeleteRecord
یک نکته را هم اینجا بگویم وان هم اینکه با استفاده از همین متد RunCommand در مدیریت فرم ها در اکسس هم می توانیم تمامی کارهایی را که با با استفاده از متد GoToRecord انجام دادیم را برای دکمه های خود انجام دهیم .
البته به این مطلب در فیلم آموزشی که در انتهای همین صفحه مشاهده می کنید اشاره کرده ام .
پس خیلی ساده و راحت به کمک کدهای VBA توانستیم عملکرد مورد نظر خودمان را برای هر کدام از این دکمه ها تعیین کنیم این هم روش دیگری بود که به کمک آن توانستیم برای دکمه های خود عملکردهای مورد نظر خود را تعیین کنیم .
اما بغیر از این روش هایی که در اینجا بررسی کردیم روش دیگری هم وجود دارد و آن هم اینکه بیاییم و برای هر عملکرد یک تابع تعریف کنیم .
خود من این روش را بهترین و مفیدترین روش برای این منظور می دانم .
اما اینکه چگونه این توابع را تعریف کنیم و از آنها در مدیریت فرم ها در اکسس استفاده کنیم و اینکه چرا این روش را مناسبترین روش می دانم چیزی است که می توانید با مشاهده ویدیوی زیر به آن پی ببرید .
اینها مجموعه ای از موارد و روش هایی بودند که به کمک آنها می توانیم به مدیریت فرم ها در اکسس بپردازیم .
این هم از مطلب مربوط به دکمه های کنترلی در اکسس و روش هایی که با استفاده از آنها ما می توانستیم دکمه ها را مدیریت کنیم .
امیدورام که این آموزش برای شما مفید بوده باشد . خوشحال می شوم اگر نظری در مورد این آموزش دارید یا اگر سوالی در این رابطه دارید در قسمت نظرات درج کنید .
راستی اگر علاقمند به یاد گیری نرم افزار اکسس در سریعترین زمان هستید به شما پیشنهاد می کنم که دوره جامع آموزش اکسس را از دست ندهید .
مطالب زیر را حتما مطالعه کنید
مفهوم join در SQL و دیتابیس اکسس +ویدئو
ساخت برچسب در اکسس💥چطور آنها را ایجاد و مدیریت کنیم ؟
ریبون ها در اکسس💥از مخفی کردن تا مدیریت کردن آنها
چطوری متن ها و تصاویر را بصورت متحرک در اکسس نمایش بدهیم ؟
فرمت دهی نوشته ها در اکسس | کاربرد + مثالها
۵ ویژگی در فرم های اکسس که کمتر از آنها خبر داشتید .
3 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
لطفا فایل ویدئو آموزشی را که در انتهای متن بدان اشاره شده، آپلود کنید.
سلام در اولین فرصت بروزرسانی خواهد شد
سلام و خسته نباشید
یک فایل اکسس داریم که ۸۱رکورد ثبت شده است. این جدول به یک فرم جهت ورود اطلاعات و یک گزارش برای چاپ دیتا متصل است.
موقع ثبت در فرم، اطلاعات در تیبل ثبت می شود ولی موقعی که دوباره فرم باز می شود در فرم آخرین رکورد ۷۴ را نمایش می دهد و در ریپورت هم تا ۷۴ را نمایش می دهد.
آخرین سطرهای تیبل در فرم و ریپورت نمایش داده نمی شود.